Skip to content

Conversation

@johnnygreco
Copy link
Contributor

The problem we are solving

ConfigurableTaskMetadata requires you to specify the resources required to execute the task. In practice, however, all tasks always have access to all resources. While this issue isn’t a big deal, it is confusing for plugin builders who don’t have the above context.

Changes

  • Remove required_resources from metadata

  • Always assume all tasks have access to all resources.

  • Use subclasses (instead of mixins) to streamline development and simplify plugin development.

An important note is that I think we still need some what for a generator to specify its required resources. For example, say we want to filter plugin types to only grab the ones that need the model registry or just need the datastore. The solution implemented here is an abstract method called get_required_resources that must be implemented on generators. This effectively pushes this complication to a lower lever, where most developers won't need to worry about it. I'll highlight some places in the code to show what I mean.

@johnnygreco johnnygreco changed the title refactor: remove required resources from metadata and leverage subclasses over mixins refactor: update required resources treatment and leverage subclasses over mixins Jan 7, 2026
@johnnygreco johnnygreco changed the title refactor: update required resources treatment and leverage subclasses over mixins refactor: update required resources treatment and use subclasses over mixins Jan 7, 2026
@johnnygreco johnnygreco force-pushed the johnny/refactor/remove-required-resources-from-metadata branch from d7d6e9c to c4f717b Compare January 7, 2026 23:01
@johnnygreco johnnygreco force-pushed the johnny/refactor/remove-required-resources-from-metadata branch from c4f717b to 1b18b73 Compare January 9, 2026 15:56
@johnnygreco johnnygreco requested a review from nabinchha January 9, 2026 17:15
mikeknep
mikeknep previously approved these changes Jan 9, 2026
nabinchha
nabinchha previously approved these changes Jan 9, 2026
@johnnygreco johnnygreco dismissed stale reviews from nabinchha and mikeknep via 1132ac1 January 9, 2026 19:32
@johnnygreco johnnygreco merged commit 69cd989 into main Jan 9, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants